1. Field of the Invention
The present invention relates to the field of nodal architecture. In particular, the present invention relates to a system and method for maintaining proper firmware levels in the nodes of a system.
2. Description of the Related Art
Nodes are understood in the prior art to refer to a chip set or an assembly that contains a processor and associated electronics connected together on a network. Many devices are based on a nodal architecture wherein a plurality of distributed processing nodes communicate over a bus or network interface, such as a Local Area Network (LAN), a Controller Area Network (CAN), etc. A CAN network is typically used for distributed computing nodes in automobiles or machine control systems. Each node controls a particular function in the overall system, rather than a singular controller performing all the functions.
There are advantages in using a distributed nodal architecture as opposed to having a single controller manage all system operations. For example, maintenance and upgrading are much easier and less expensive to perform in a nodal system because less effort is involved in replacing a singular node comprising only a component of the system as opposed to replacing the entire main controller to upgrade or fix a particular function. The cost of replacing only one node in the event of a failure is substantially less than the cost of replacing the entire controller.
However, one difficulty with a nodal architecture is coordinating an upgrade to node firmware. For instance, in order to replace a node, the replacement node may have to be at the same firmware level as the other nodes in the system in order to function properly. However, the firmware level of a replacement part may be substantially different than the other system nodes, especially if the replacement node contains an older version of firmware than the component being replaced. For instance, the replacement node may have been in-stock at a warehouse for a significant period of time, during which one or more firmware updates were made to the system. Currently, there are two solutions to maintaining code levels on processor assemblies. The first involves maintaining replacement nodes in the warehouse at current firmware levels. This solution is costly and time consuming because it involves turning the stock every time a firmware change is made. The second solution is to have a maintenance technician update the firmware when a node is replaced at the customer site. This solution is also problematic because of the cost of having the technician apply the update and the potential of human error when applying the update.
Thus, there is a need in the art to provide an improved methodology for maintaining the proper firmware level in a nodal system.